perm filename CTAK.TIM[TIM,LSP]16 blob sn#764964 filedate 1984-08-12 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00019 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	(fasload ctak)
C00004 00003	 CTAK
C00005 00004	 NIL
C00006 00005	 Franz
C00014 00006	 SCORE Dec 12, 1983 (InterLisp)
C00015 00007	 PSL SCORE 1/10/84 - see later page
C00016 00008	 DEC780CL
C00017 00009	 InterLisp Vax 780
C00018 00010	 PSL-20 3.3
C00019 00011	 PSL-Cray 3.2
C00020 00012	 PSL-750 3.2
C00021 00013	 PSL-780 3.2
C00022 00014	 PSL-DN600 3.2
C00023 00015	 PSL-DN300 3.2
C00024 00016	 PSL-dn160
C00025 00017	 PERQ 18/6/84
C00026 00018	∂11-Jul-84  1750	EJG  	S-1 CTAK time 
C00027 00019	 PSL Numbers 7/31/84
C00028 ENDMK
C⊗;
(fasload ctak)

(timit)
Timing performed on Sunday 06/26/83 at 10:49:22.
Cpu (- GC) Time = 2.854
Elapsed Time = 4.1
Wholine Time = 3.81666666
GC Time = 0.0
Load Average Before  = 0.302836537
Load Average After   = 0.32716942
Average Load Average = 0.315002978
NIL 
(timit)
Timing performed on Sunday 06/26/83 at 10:49:47.
Cpu (- GC) Time = 2.852
Elapsed Time = 4.48333335
Wholine Time = 3.83333334
GC Time = 0.0
Load Average Before  = 0.335514784
Load Average After   = 0.369415164
Average Load Average = 0.352464974
NIL 
(timit)
Timing performed on Sunday 06/26/83 at 10:49:56.
Cpu (- GC) Time = 2.852
Elapsed Time = 4.18333334
Wholine Time = 3.68333334
GC Time = 0.0
Load Average Before  = 0.371201158
Load Average After   = 0.3960855
Average Load Average = 0.38364333
NIL 

New CPU
(fasload ctak)

(timit)
Timing performed on Thursday 01/26/84 at 12:58:55.
Cpu (- GC) Time = 2.855
Elapsed Time = 6.5833333
Wholine Time = 3.9
GC Time = 0.0
Load Average Before  = 0.50185597
Load Average After   = 0.549576044
Average Load Average = 0.52571601
NIL 
;;; CTAK
D3
7/5/83
Elapsed	18.0
CPU	18.0

D2
7/5/83, without interrupts
Elapsed	140.0
CPU	140.0

D1
1/25/84 with interrupts
Elapsed 63.2
CPU	63.2
;;; NIL

CTAK

Changed to fixnum-only arithmetic functions.  [I will give you some
generic-arithmetic TAK times with ordinary TAK, for kicks.]

cpu=9.92,elapsed=9.92,pagefaults=0
;;; Franz
∂09-Oct-83  0939	jkf@ucbkim 	ctak    
Received: from UCBKIM by SU-AI with TCP/SMTP; 9 Oct 83  09:39:37 PDT
Received: by ucbkim.ARPA (4.6/4.2)
	id AA17672; Sun, 9 Oct 83 09:43:04 PDT
Date: Sun, 9 Oct 83 09:43:04 PDT
From: John Foderaro (on an h19-u) <jkf@ucbkim>
Message-Id: <8310091643.AA17672@ucbkim.ARPA>
To: rpg@su-ai
Subject: ctak
Cc: 

--- Benchmark ctak run on ucbkim at Sat Oct 8 02:40:04 PDT 1983 by jkf
--- cpu usage: 2:40am up 3:10, 0 users, load average: 1.35, 1.19, 1.17
Franz Lisp, Opus 38.81

=> [fasl ctak.o]
t
=> benchmark: test (file ctak) , tranlinks: on, localf: no
executing form: (tak 18 12 6)
begin (44 175)
end (767 175)
runs 1
avg cpu time 12.05

benchmark: test (file ctak) , tranlinks: off, localf: no
executing form: (tak 18 12 6)
begin (767 175)
end (1835 175)
runs 1
avg cpu time 17.8

nil
=> Franz Lisp, Opus 38.81

=> [fasl ctak-l.o]
t
=> benchmark: test (file ctak) , tranlinks: on, localf: yes
executing form: (tak 18 12 6)
begin (45 176)
end (686 176)
runs 1
avg cpu time 10.68333333333333

benchmark: test (file ctak) , tranlinks: off, localf: yes
executing form: (tak 18 12 6)
begin (686 176)
end (1328 176)
runs 1
avg cpu time 10.7

nil
=> Franz Lisp, Opus 38.81

=> [load ctak.l]
[fasl benchmac.o]
[fasl benchmac.o]
t
=> benchmark: test (file ctak) , tranlinks: on, interpreted 
executing form: (tak 18 12 6)
begin (68 174)
end (6531 174)
runs 1
avg cpu time 107.7166666666667

benchmark: test (file ctak) , tranlinks: off, interpreted 
executing form: (tak 18 12 6)
begin (6533 174)
end (13027 174)
runs 1
avg cpu time 108.2333333333333

nil
=> --- cpu usage: 2:45am up 3:15, 0 users, load average: 1.13, 1.14, 1.15
--- end of benchmark ctak


--- Benchmark ctak run on ucbmatisse at Fri Oct 7 13:07:38 PDT 1983 by jkf
--- cpu usage: 1:07pm up 4 days, 53 mins, 4 users, load average: 1.44, 1.24, 1.26
Franz Lisp, Opus 38.81

=> [fasl ctak.o]
t
=> benchmark: test (file ctak) , tranlinks: on, localf: no
executing form: (tak 18 12 6)
begin (122 198)
end (1223 198)
runs 1
avg cpu time 18.35

benchmark: test (file ctak) , tranlinks: off, localf: no
executing form: (tak 18 12 6)
begin (1225 198)
end (2848 198)
runs 1
avg cpu time 27.05

nil
=> Franz Lisp, Opus 38.81

=> [fasl ctak-l.o]
t
=> benchmark: test (file ctak) , tranlinks: on, localf: yes
executing form: (tak 18 12 6)
begin (121 202)
end (1246 202)
runs 1
avg cpu time 18.75

benchmark: test (file ctak) , tranlinks: off, localf: yes
executing form: (tak 18 12 6)
begin (1247 202)
end (2342 202)
runs 1
avg cpu time 18.25

nil
=> Franz Lisp, Opus 38.81

=> [load ctak.l]
[fasl benchmac.o]
[fasl benchmac.o]
t
=> benchmark: test (file ctak) , tranlinks: on, interpreted 
executing form: (tak 18 12 6)
begin (163 200)
end (10258 200)
runs 1
avg cpu time 168.25

benchmark: test (file ctak) , tranlinks: off, interpreted 
executing form: (tak 18 12 6)
begin (10260 200)
end (20409 200)
runs 1
avg cpu time 169.15

nil
=> --- cpu usage: 1:16pm up 4 days, 1:02, 5 users, load average: 1.53, 1.32, 1.28
--- end of benchmark ctak


--- Benchmark ctak run on ucbmike at Fri Oct 7 14:30:45 PDT 1983 by jkf
--- cpu usage: 2:30pm up 5:02, 0 users, load average: 1.17, 1.06, 1.04
Franz Lisp, Opus 38.79
-> [fasl ctak.o]
t
-> benchmark: test (file ctak) , tranlinks: on, localf: no
executing form: (tak 18 12 6)
begin (89 324)
end (1334 324)
runs 1
avg cpu time 20.75

benchmark: test (file ctak) , tranlinks: off, localf: no
executing form: (tak 18 12 6)
begin (1336 324)
end (3044 324)
runs 1
avg cpu time 28.46666666666667

nil
-> Franz Lisp, Opus 38.79
-> [fasl ctak-l.o]
t
-> benchmark: test (file ctak) , tranlinks: on, localf: yes
executing form: (tak 18 12 6)
begin (89 324)
end (1265 324)
runs 1
avg cpu time 19.6

benchmark: test (file ctak) , tranlinks: off, localf: yes
executing form: (tak 18 12 6)
begin (1267 324)
end (2444 324)
runs 1
avg cpu time 19.61666666666667

nil
-> Franz Lisp, Opus 38.79
-> [load ctak.l]
[fasl benchmac.o]
[fasl benchmac.o]
t
-> benchmark: test (file ctak) , tranlinks: on, interpreted 
executing form: (tak 18 12 6)
begin (142 325)
end (11786 325)
runs 1
avg cpu time 194.0666666666667

benchmark: test (file ctak) , tranlinks: off, interpreted 
executing form: (tak 18 12 6)
begin (11792 325)
end (23437 325)
runs 1
avg cpu time 194.0833333333333

nil
-> --- cpu usage: 2:40pm up 5:11, 0 users, load average: 1.07, 1.04, 1.04
--- end of benchmark ctak


;;; SCORE Dec 12, 1983 (InterLisp)

not block compiled:

44.672 seconds
0.0 gc
;;; PSL SCORE 1/10/84 - see later page

(tak 18 12 6)
7
Cpu time: 5157 ms
44 lisp break>> (tak 18 12 6)
7
Cpu time: 5104 ms
45 lisp break>> (tak 18 12 6)
7
Cpu time: 5106 ms
46 lisp break>> (tak 18 12 6)
7
Cpu time: 5184 ms
47 lisp break>> 
;;; DEC780CL

	cpu + probability x gc
CTAK	20 + 0.2 x 16

*************************************************************************
Name of		VAXLisp		VAXLisp		VAXLisp		VAXLisp
application	U1.0-20		U1.0-20		U1.0-20		U1.0-20
Benchmark	VMS V3.5	VMS V3.5	VMS V3.5	VMS V3.6
		730 (No FPA)	750 (No FPA)	780		785 (No FPA)
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------

  Ctak		34.86		13.86		8.09		5.77
;;; InterLisp Vax 780

CTAK:
←(TIME (TAK 18 12 6]
0 conses
35.456 seconds
7
;;; PSL-20 3.3

 4:12:11 USER	CTAK - TAK with catch and throw
 4:12:11 USER	"CTAK - TAK with catch and throw"
 4:12:11 USER	
 4:12:11 USER	Timing performed on DEC-20
 4:12:11 USER	11-Mar-84 04:12:11 .
 4:12:11 USER	*** Garbage collection starting
 4:12:12 USER	*** GC 9: time 837 ms, 23681 recovered, 253396 free
 4:12:15 USER	
 4:12:15 USER	Cpu (- GC) Time = 2.958 secs
 4:12:15 USER	Elapsed Time = 3.0 secs
 4:12:15 USER	Wholine Time = 0.0
 4:12:15 USER	GC Time = 0.0 secs
 4:12:15 USER	Load Average Before  = 1.1
 4:12:15 USER	Load Average After   = 1.1
 4:12:16 USER	Average Load Average = 1.1
;;; PSL-Cray 3.2
;;; Times are in milliseconds

 09:29:01 016:17.075 CTAK: Takai test using catch and throw    
 09:29:26 016:19.878 Cpu (- GC) Time = 606.33700000 secs$2 π
 09:29:28 016:20.398 Elapsed Time = 0. secs    
 09:29:30 016:20.918 GC Time = 0. secs 
 09:29:31 016:21.439 Load Average Before  = 0  
 09:29:33 016:21.959 Load Average After   = 0  
 09:29:35 016:22.479 Average Load Average = 0. 
;;; PSL-750 3.2

Cpu (- GC) Time = 13.583 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before  = 0
Load Average After   = 0
Average Load Average = 0.0
;;; PSL-780 3.2

Cpu (- GC) Time = 5.389 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before  = 0
Load Average After   = 0
Average Load Average = 0.0
;;; PSL-DN600 3.2

Cpu (- GC) Time = 12.259 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before  = 0
Load Average After   = 0
Average Load Average = 0.0
;;; PSL-DN300 3.2

Cpu (- GC) Time = 12.433 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before  = 0
Load Average After   = 0
Average Load Average = 0.0
;;; PSL-dn160

CTAK: Takai test using catch and throw
Timing performed on Apollo
today 12:00:00.
........................................
Cpu (- GC) Time = 6.631 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before  = 0
Load Average After   = 0
Average Load Average = 0.0
;;; PERQ 18/6/84

12.44 seconds (stopwatch)

Benchmark       % of old time   Time    Machine used
CTak            68%               8.48  Joe's T2
∂11-Jul-84  1750	EJG  	S-1 CTAK time 
The official S-1 CTAK time now stands at 0.820 seconds.  That's running
a (TESTER) doing (TAK 18 12 6) 100 times and dividing by 100.

By hacking the LAP file manually (see CTAK.LAP[1,EJG]) to convert the
10 PUSHes (bad pipe characteristics) and 2 moves for setting up a catch
frame into one MOVP.P.A and 10 moves, I got it down to 0.793 seconds.
This should be an easy change to CODEGE (but it only bought about 3 percent).

This compares to 0.6 on the Cray-1; our best yet!

;;; PSL Numbers 7/31/84

          |KL-10b|  20-60 | 20-60 | 3600 | 20-60 | CRAY | 12Mhz| HP-UX
Benchmark |MACLSP|InterLsp|PSL 3.2| ZetaL|PSL 3.3|PSL3.2| HP200|PSL3.3
--------------------------------------------------------------------------
CTak      |  2.85| 44.672 | 2.958 |  8.84|  2.995| 0.593|  9.33|  9.49